package com.miplus.ccrm.workflow.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.yulichang.base.MPJBaseService;
import com.miplus.ccrm.common.CmdResVo;
import com.miplus.ccrm.workflow.model.dto.recycle.*;
import com.miplus.ccrm.workflow.model.po.WorkflowRecycle;
import com.miplus.ccrm.workflow.model.vo.WorkflowRecycleVO;

/**
 * @author feixiang
* @description 针对表【workflow_recycle(话术回收站表)】的数据库操作Service
* @createDate 2025-11-01 17:41:37
*/
public interface WorkflowRecycleService extends MPJBaseService<WorkflowRecycle> {

    /**
     * 分页查询回收站话术
     */
    IPage<WorkflowRecycleVO> getRecyclePage(RecycleQueryDTO dto);

    /**
     * 恢复话术
     */
    CmdResVo restoreWorkflow(RestoreWorkflowDTO dto, String userId);

    /**
     * 永久删除话术
     */
    CmdResVo permanentDelete(PermanentDeleteDTO dto, String userId);

    /**
     * 清空回收站
     */
    CmdResVo clearRecycle(ClearRecycleDTO dto, String userId);

    /**
     * 清理过期数据
     */
    CmdResVo cleanExpiredData(String userId);

    /**
     * 获取回收站详情
     */
    WorkflowRecycleVO getRecycleDetail(String recycleId);
}
